/* Universidad del Valle de Guatemala
 * Laboratorio 3
 * Mariana Castillo
 * Luis Alburez
 * Jose Pablo Rodriguez
 * Julio Maldonado
 * De La Cruz 
 * Descripcion: ordena los numeros comparando que un numero con el que le sigue para ver si es mayor o menor, y asi cambiarlos de lugar
 * Fuente Citada: Duane A. Bailey. 2007. Java Structures. Root 7 Edition. PP. 121
 * Fecha: 28/07/13
 */
package hoja3;

import java.util.*;
import java.io.*;

public class BubbleSort implements Comparable {

    // Se comparan dos objetos, para ver cual es mayor
    public int compareTo(int item, int item2){
        int x=0;
        if(item > item2){
           x= 1;
        }
        return x;
    }
    
    // SE realiza una rotacion entre los elementos de la lista
    public void swap(int data[], int i, int j){
        int temp;
        temp= data[i];
        data[i]= data[j];
        data[j]= temp;
    }
    //Algoritmo obtenido de: Java Structures
    public void bubbleSort(int data[], int n){
        int numOrden= 0;
        int indice;
        while(numOrden < n){
            for(indice=1; indice<n-numOrden; indice ++){
                    if (compareTo((data[indice-1]),(data[indice]))==1)
                    swap(data, indice-1,indice);       
            }
            numOrden++;
        }
    }
    
    
}
